As monitors become less expensive, desktop PCs and workstations with multiple displays are rapidly becoming commonplace. The cost of a display can increase exponentially with size. Using multiple, smaller screens to achieve greater screen area is more cost effective than using one large display. Multiple screens can also be useful in fields such as simulation, where wrap around screens are needed for the realistic reproduction of the simulation environment.
Displaying information on multiple screens can be technically challenging. When using multiple screens to display a single image, the point at which the image stops on one screen and starts on another must be coordinated. The resolution and refresh rate of each of the displays must be synchronized. If more than one computer is used to drive the single image on multiple displays, the image data from the computers to the monitors must also be synchronized.
When using a non-deterministic (non real-time) operating system, synchronizing the image data can be problematic. Even when a synchronization signal is simultaneously sent to each of the computers operating the displays, timing problems can still occur due to the non-deterministic nature of the operating system. For example, if three computers all receive a sync signal, the thread that receives the sync signal may not be activated immediately upon arrival of a new sync packet. This can result in three different signals that may be off by several milliseconds. The sync signal timing discrepancies can cause image tearing. Image tearing occurs when the image data is updated slower than the screen is updated. This causes odd tearing effects to appear on the screens. In systems using multiple displays tearing artifacts can occur between moving images on adjacent unsynchronized screens.
Unsynchronized screens can also cause other temporal effects, wherein noticeable images on the screens for a short duration, such as bright flashes, may not appear simultaneously on all displays if the display devices are not synchronized. What is needed is a method for filtering the sync signals to determine whether each sync signal is within a predetermined acceptable deviation that will not visibly interfere with the images on the multiple displays.